/*
* ============================================================================
*  Name     : IconFileProvider.h
*  Part of  : GV60
*  Copyright: Wipo Software
* ============================================================================
*/

#ifndef ICONFILEPROVIDER_H
#define ICONFILEPROVIDER_H

#include <akniconutils.h>

class CIconFileProvider : public CBase, public MAknIconFileProvider
{
  public:
    static CIconFileProvider* NewL(RFs aSession, const TDesC& aFilename);
    static CIconFileProvider* NewLC(RFs aSession, const TDesC& aFilename);
    ~CIconFileProvider();

  private: //from MAknIconFileProvider
    void RetrieveIconFileHandleL( RFile& aFile, const TIconFileType aType );
    void Finished();

  private:
    CIconFileProvider(RFs aSession);
    void ConstructL( const TDesC& aFilename);

  private: // Data
    RFs    iSession;
    HBufC* pFilename;
};

#endif // ICONFILEPROVIDER
